import { Module, ValidationPipe } from '@nestjs/common';
import { AppController } from './app.controller';
import { AppService } from './app.service';
import {ConfigModule} from "@nestjs/config";
import { EmailController } from './email/email.controller';
import { UserController } from './user/user.controller';
@Module({
  imports: [
      ConfigModule.forRoot({
        isGlobal: true,
      }),
  ],
  controllers: [AppController, EmailController,UserController],
  providers: [AppService,{
    provide:'APP_PIPE',
    useValue: new ValidationPipe({
      whitelist: true, // 自动过滤掉DTO中未定义的字段（防止恶意提交额外参数）
      forbidNonWhitelisted: true, // 如果有未定义的字段，直接报错
      transform: true, // 自动转换数据类型（如将字符串"20"转为数字20）
      transformOptions: {
        enableImplicitConversion: true, // 允许隐式类型转换
      },
    }),
  }],
})
export class AppModule {}
